#!/user/bin/env python
# -*- coding:utf-8 -*-
#/home/zc/workspace/tinyfeet/trunk/src/models/updateuri.py

'''
Created on 2011-9-21

@author: zc
'''

import updateweibo
import web
import simplejson
from checkkey import checkkey
from dbhandle import mysqldb
from config import sqlmap


class inviteFriend( object ):
    '''发送微博邀请
    接收POST数据，调用微博接口发送微博邀请
    POST数据示例：
    { "uname":1223 }
            
    返回：
    成功   {"msg":200}
    失败   {"msg":201, "errmsg":"inviteFirend  Faild."}
    '''
    def POST( self ):
        """ 接受客户端post的消息 """
        data = web.input()
        res = None
        if checkkey( web.config._session, web.ctx.env ):
            uname = data.uname
            res = updateweibo.inviteFriend( uname )
        else:
            res = '{"msg":"203", "errmsg":"session验证未通过."}' 
        return res
    
        
class broadcastfeet( object ):
    '''发送微博告诉大家我在用tinyfeet
    接收POST数据
            
    返回：
    成功   {"msg":200}
    失败   {"msg":201, "errmsg":"inviteFirend  Faild."}
    '''
    
    def POST( self ):
        """ 接受客户端post的消息 """
        data = web.data()
        res = None
        json_data = simplejson.loads( data )
        
        if checkkey( web.config._session, web.ctx.env ):
            res = updateweibo.broadcastfeet()
        else:
            res = '{"msg":203, "errmsg":"session验证未通过."}' 

        return res


class tfeetweet( object ):
    '''三个功能：
      1.发布新tfeet时同时发到微博
      2.转发tfeet到微博，转发时可加评论
      3.评论tfeet是同时发到微博
    POST数据示例：
        {
          "tfid":2123,
          "comment":"PS的吧？", - ->没有评论可以为空字符串。
        }
            
    返回：
    成功   {"msg":200}
    失败   {"msg":201, "errmsg":"tweet  Faild."}
    '''
    
    def POST( self ):
        """ 接受客户端post的消息 """
        data = web.input()
        res = None
        
        if checkkey( web.config._session, web.ctx.env ):
            tfid = int( data.tfid )
            comment = data.comment if len( data.comment.replace( ' ', '' ) ) > 0 else None
            sql_getfeet = sqlmap.SQL_GETTFEET % ( tfid ) #get tfeet from db
            dbo = mysqldb.mysqldb()
            tfeet_res = dbo.query( sql_getfeet )
            if tfeet_res:
                tfeetContent = tfeet_res[0]
                uname = tfeetContent.uname
                text = tfeetContent.content
                pic = tfeetContent.images
                lat = tfeetContent.latigude
                long = tfeetContent.longitude
                weibo_id = tfeetContent.weibo_id
                res = updateweibo.tfeetweet( text, comment, uname, lat, long, pic, weibo_id )
        else:
            res = '{"msg":"203", "errmsg":"session验证未通过."}' 
        return res
